perm filename SCHED.FAI[SS,SYS] blob sn#288725 filedate 1977-06-20 generic text, type C, neo UTF8
COMMENT ⊗   VALID 00002 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00002 00002	TITLE SCHED MEASURE AVERAGE TIME UNTIL SCHEDULING OFF FOR A JOB
C00005 ENDMK
C⊗;
TITLE SCHED MEASURE AVERAGE TIME UNTIL SCHEDULING OFF FOR A JOB

A←1
B←2
C←3
D←4
E←5
T←6
TT←7
J←10
S←11

P←17

JNA←←40000
JSEG←←1000

GO:	RESET
	MOVE P,[-100,,PDL-1]
	PUSHJ P,GSYMS
	MOVSI A,377001
	SETPR2 A,
	JRST 4,.
GO1:	OUTSTR [ASCIZ /
JOB = /]
	PUSHJ P,DECIN
	JRST GO1
	MOVE J,A
	JUMPLE A,GO1
	CAIL J,100
	JRST GO1
	MOVE S,@AJBTSTS
	TLNN S,JNA
	JRST GO2
	OUTSTR [ASCIZ /JOB /]
	MOVE A,J
	PUSHJ P,DECOUT
	OUTSTR [ASCIZ /. /]
	MOVE B,@AJOBNAM
	PUSHJ P,SIXOUT
	OUTCHR [40]
	TLNE S,JSEG
	JRST GO3
	MOVE A,@ATTIME		;GET TOTAL TICKS RUN
	MOVE B,@ANSCHOF		;GET TOTAL TIMES SCHEDULED OFF
	IMULI A,=100
	IDIV A,B
	IDIVI A,=100
	PUSH P,B
	PUSHJ P,DECOUT
	OUTCHR ["."]
	POP P,A
	CAIGE A,=10
	OUTCHR ["0"]
	PUSHJ P,DECOUT
	OUTSTR [ASCIZ / TICKS PER SCHEDULE
/]
	JRST GO1

GO2:	OUTSTR [ASCIZ /NO SUCH JOB/]
	JRST GO1

GO3:	OUTSTR [ASCIZ /IS A SEGMENT
/]
	JRST GO1

DECIN:	MOVEI A,0
DECIN1:	INCHWL B
	CAIL B,"0"
	CAILE B,"9"
	JRST DECIN2
	IMULI A,=10
	ADDI A,-"0"(B)
	JRST DECIN1

DECIN2:	CAIN B,15
	JRST DECIN1
	CAIN B,12
CPOPJ1:	AOS (P)
CPOPJ:	POPJ P,

DECOUT:	IDIVI A,=10
	JUMPE A,DECOU1
	HRLM B,(P)
	PUSHJ P,DECOUT
	HLRZ B,(P)
DECOU1:	ADDI B,"0"
	OUTCHR B
	POPJ P,

SIXOUT:	MOVEI A,0
	LSHC A,6
	ADDI A,40
	OUTCHR A
	JUMPN B,SIXOUT
	POPJ P,

GSYMS:	MOVSI A,-NSYMS
GSYMS1:	MOVE B,SYMNAM(A)
	MOVEI C,0
	MOVEI D,B
	.SYML D,
	JRST 4,.
	ADDI D,400000
	HRRM D,SYMVAL(A)
	AOBJN A,GSYMS1
	POPJ P,

SYMNAM:	RADIX50 0,JBTSTS
	RADIX50 0,JOBNAM
	RADIX50 0,NSCHOF
	RADIX50 0,TTIME
NSYMS←←.-SYMNAM

SYMVAL::
AJBTSTS:(J)
AJOBNAM:(J)
ANSCHOF:(J)
ATTIME:	(J)

PDL:	BLOCK 100
	END GO